<?php

namespace app\common\model;

use think\Model;

/**
 * @property int $id ID
 * @property int $question_id 题目ID
 * @property Question $question 题目
 * @property int $commenter_id 留言用户ID
 * @property User $commenter 留言者
 * @property bool $request_check 是否请求重审
 * @property bool $is_rechecked 是否已经重审过了
 * @property string $content 留言内容
 * @property string $create_at 创建时间
 * @property string $update_at 更新时间
 */
class CommentMessage extends Model
{
    // 数据表名
    protected $table = 'comment_messages';
    // 主键
    protected $pk = 'id';
    // 保存时自动补完
    protected $auto = [];
    // 新增时自动补完
    protected $insert = [];
    // 更新时自动补完
    protected $update = [];
    // 创建时间字段
    protected $createTime = 'create_at';
    // 更新时间字段
    protected $updateTime = 'update_at';
    // 是否需要自动写入时间戳
    protected $autoWriteTimestamp = true;
    // 类型声明
    protected $type = [
        'id'              => 'integer',
        'question_id'     => 'integer',
        'commenter_id'    => 'integer',
        'request_check'   => 'boolean',
        'is_rechecked'    => 'boolean',
        'content'         => 'string',
        'create_at'       => 'datetime',
        'update_at'       => 'datetime',
    ];

    /**
     * 定义数据类型属性question
     */
    public function question()
    {
        // 当前模型的arg[2]字段=arg[1]模型的主键
        return $this->belongsTo('\app\common\model\Question', 'question_id');
    }

    /**
     * 定义数据类型属性commenter
     */
    public function commenter()
    {
        // 当前模型的arg[2]字段=arg[1]模型的主键
        return $this->belongsTo('\app\common\model\User', 'commenter_id');
    }
}
